package com.emn.fil.iapoker.dto.carte;

/**
 * Carte de jeu
 * @author francoisvasnier
 *
 */
public class Carte {
	
	/**
	 * Couleur de la carte 
	 */
	private Couleur couleur;
	
	/**
	 * Signe de la carte (roi, etc.)
	 */
	private Signe signe;
	
    // The ranks.
    public static final int ACE      = 12;
    public static final int KING     = 11;
    public static final int QUEEN    = 10;
    public static final int JACK     = 9;
    public static final int TEN      = 8;
    public static final int NINE     = 7;
    public static final int EIGHT    = 6;
    public static final int SEVEN    = 5;
    public static final int SIX      = 4;
    public static final int FIVE     = 3;
    public static final int FOUR     = 2;
    public static final int THREE    = 1;
    public static final int DEUCE    = 0;
    
    // The suits.
    public static final int SPADES   = 3;
    public static final int HEARTS   = 2;
    public static final int CLUBS    = 1;
    public static final int DIAMONDS = 0;
    
	/**
	 * Constructeur d'une carte
	 * @param couleur Couleur de la carte
	 * @param signe Signe de la carte
	 */
	public Carte(Couleur couleur, Signe signe) {
		
		this.couleur = couleur;
		this.signe = signe;
		
	}
	
	/**
	 * Affiche une carte
	 * @return Affichage de la carte
	 */
	public String toString() {
		return signe.toString() + " de " + couleur.toString();
	}
	
	/**
	 * Retourne le rang de la carte
	 * @return le rang de la carte
	 */
	public int getRank() {
		return this.signe.getRank();
	}
	
	/**
	 * Retourne la couleur de la carte
	 * @return la couleur de la carte
	 */
	public int getSuit() {
		return this.couleur.getSuit();
	}
}
